1. Field of the Invention
The present invention relates to a video editing apparatus for editing video images by dividing the video into plural image shots and then recombining said shots.
2. Description of the Prior Art
FIG. 13 is a block diagram of a conventional nonlinear video editing apparatus. The video editing process with this apparatus consists of dividing a linearly recorded video signal into plural image shots, and then resequencing the reproduction timing of these shots according to the editing information.
The concept of this video editing process using a video tape medium is illustrated in FIG. 14, in which the source video tape is, for example, the tape obtained at the spot where the action took place, the MO (magneto-optical) disk a temporary recording medium on which the video signal from the source video tape is compressed and stored, and the master video tape is, for example, the tape used for news broadcasting in which various numbers of shots from the source video tape are rearranged. The rearrangement of various shots are possible, because of the random access on the MO disk.
As shown in FIG. 14, the video signal of the source video tape 1301 from frame 101 to frame 104 is named shot A; the period from frame 111 to frame 114, shot B; from frame 37101 to frame 37104, shot C; and from frame 37111 to frame 37114, shot D. It is noted that each of shots A, B, C and D includes four frames.
These shots are temporarily stored in the MO dusks and then copied to the new master video tape 1302 in the sequence shot A, shot C, shot B, and shot D. As a result, when the master video tape 1302 is subsequently reproduced, the edited video signal is linearly reproduced in the edited sequence A, C, B, and D.
The editing information used for the editing process shown in FIG. 14 is shown in the table in FIG. 15. This editing information comprises a shot name identifying the shot in the original media, i.e., the source video tape; the first and last frame numbers indicating the recording position of the shot on the source video tape; a shot number indicating the order in which the shots are reproduced from the master video tape; and the first and last reproduction frame numbers identifying the first and last frame numbers of the resequenced shots during reproduction in the master video tape.
Referring again to FIG. 13, the video editing apparatus comprises an editing information memory 1201 storing the above editing information. Data is entered to the editing information memory 1201 by the editor using a keyboard 1202 and/or mouse 1203 or other data entry device.
A magneto-optical (MO) disk 1204 is used to store the video information in a JPEG compression format. The MO disk 1204 is a removable, random-access storage medium accessed using a MO disk drive 1205. The MO disk drive 1205 has a minimum data transfer rate of 8 megabits/sec., and requires a maximum 90 ms to access any given random data.
This standard of MO disk drive performance can be easily achieved: the PMO-650 magneto-optical disk drive marketed by Pinnacle Micro (Irving, Calif., U.S.A.) achieves a data transfer rate of 4.2 megabytes/sec., i.e., 33.6 megabits/sec., in synchronous burst mode transmissions, and an effective random data access speed of 19 ms.
The MO disk drive 1205 is connected in this video editing apparatus by a SCSI interface cable 1206. Data from the MO disk 1204 is input to a 56-kilobyte capacity data FIFO buffer 1207. Data from the data FIFO buffer 1207 is input to the JPEG expander 1208 for data expansion, and is then displayed on the monitor 1209.
The reproduction controller 1210 controls the MO disk drive 1205 according to the editing information from the editing information memory 1201.
The vertical synchronization signal generator 1211 supplies the frame frequency of the NTSC signal to the overall system.
The video signal is compressed according to the JPEG standard to an average capacity of 8 kilobytes/frame before being sequentially stored to the MO disk 1204 with the first video frame assigned to sector 0 of the MO disk 1204. Note that the MO disk 1204 has a 512-byte sector size. Note, also, that if the first frame of each shot is X (such as 101) and the last frame is Y (such as 104), the first and last sectors of each shot can be obtained by the simple equations 16(X-1) and 16Y-1, respectively.
Storage of the video data from the source video tape 1301 to the MO disk 1204 is shown in FIG. 15.
FIG. 16 is a flow chart of the reproduction process of the reproduction controller 1210. This process is described briefly below.
When the reproduction command from the user (editor) is received (1601), the reproduction process begins (1602). This reproduction process starts with a video reproduction set-up routine (1603), is followed by a continuous reproduction routine (1604), and then terminates (1605).
It is to be noted that the variable N used to express the number of the image shot to be processed is used in common throughout the reproduction process. In the above example shown in FIG. 14, since there are four shots A, B, C and D, N increases 1, 2, 3 and 4, and the maximum N.sub.max is 4.
FIG. 17 is a flow chart of the video reproduction set-up routine (1603).
When the video reproduction set-up routine is started, the variable N is initialized to `1` (1702).
In step 1703, it is then determined whether a compressed video signal of four frames or more in duration is stored in data FIFO buffer 1207. If there is, the process terminates (1707); if not, control passes to the next step (1704).
In step 1704, the editing information `a` is referenced, and the MO disk drive control signal `b` is output to access the starting sector of shot number N on the MO disk 1204.
The compressed video data `c` of shot N is thus output from the MO disk 1204 to the data FIFO buffer 1207 (1705).
In step 1706, the counter is then incremented (N=N+1), and the process loops back to the test (1703).
The process terminates when step 1703 branches to step 1707.
This operation is described in more detail below with application to the editing information shown in FIG. 15.
When the video reproduction set-up routine is started (1701), the variable N is initialized to `1` (1702), and it is determined whether a compressed video signal of four frames or more in duration is stored in data FIFO buffer 1207 (1703). Since there is not at the initial stage, control passes to the next step (1704).
In step 1704, the editing information `a` is referenced, and MO disk drive control signal `b` is output to access sector 640.sub.H at the beginning of shot number N on the MO disk 1204.
The compressed video data `c` of shot 1 is thus output from the MO disk 1204 to the data FIFO buffer 1207 (1705). The data from sector 640.sub.H to sector 67F.sub.H of the MO disk 1204 is written to the data FIFO buffer 1207 at this time.
The counter is then incremented to N=2, and the process loops back to the test (1703).
In this pass, however, step 1703 determines that there are four frames or more of compressed video data stored to the data FIFO buffer 1207, and control branches to step 1707, thus terminating the video reproduction set-up routine.
FIG. 18 is a flow chart of the continuous reproduction routine. This routine basically comprises two subroutines that execute in parallel: a JPEG expansion control routine 1801 for controlling the JPEG expander 1208 from the data FIFO buffer 1207, and a data FIFO buffer fill routine 1802 for controlling data transfer from the MO disk 1204 to the data FIFO buffer 1207.
FIG. 19 is a flow chart of the JPEG expansion control process 1801.
Once the JPEG expansion control routine starts, it is determined whether compressed video data is stored in the data FIFO buffer 1207 (1902). If there is, control passes to the next step (1903); if not, the process terminates (1904).
In step 1903, one frame of compressed video data `d` is read synchronized to the vertical synchronization signal from the data FIFO buffer 1207, and JPEG expansion control signal `f` is output to the JPEG expander 1208 to expand the compressed data and thereby reproduce the original video data `e`. Control then loops back to the test (1902).
As a result, one frame at a time is reproduced synchronized to the vertical synchronization signal for as is long as there is compressed video data stored in the data FIFO buffer 1207.
FIG. 20 is a flow chart of the data FIFO buffer fill routine 1802.
Once the data FIFO buffer fill routine starts, it is determined if there are four or fewer frames of compressed video data stored in the data FIFO buffer 1207 (2002). If there are, control flows to step 2003; if not, it loops back to 2002.
In step 2003, the editing information `a` is referenced to determine whether shot N is equal to or less than the maximum shot number N.sub.max. If it is, control flows to step 2004; if not, it jumps to step 2007 and the process terminates.
In step 2004, the MO disk drive control signal `b` is output to access the starting sector of shot number N on the MO disk 1204.
The compressed video data `c` of shot N is thus output from the MO disk 1204 to the data FIFO buffer 1207 (2005).
In step 2006, the counter is then incremented (N=N+1), and the process loops back to the test (2002).
The process terminates at step 2007.
Continuous reproduction of the editing information shown in FIG. 15 is shown in FIG. 21 and described below.
In FIG. 21, the upper section (a) illustrates control of the MO disk drive 1205 with the passage of time; and the lower section (b) shows the change in the number of frames remaining in the data FIFO buffer 1207.
When continuous reproduction starts, i.e., at 0 ms on the time scale, it is assumed that shot 1, i.e., shot A is already transferred to the data FIFO buffer 1207. Thus, there are already four frames of shot 1 stored in the data FIFO buffer 1207. The condition for the data FIFO buffer fill routine 1802, particularly step 2002, is therefore satisfied, and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (90EC0.sub.H) of shot 2, i.e., shot C, on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 90EC0.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 90 ms after the start of continuous reproduction, the 64 sectors, or 32 kilobytes, of data from sector 90EC0.sub.H to sector 90EFF.sub.H corresponding to shot 2 are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 32 ms; data transfer is therefore completed at 122 ms after the start of continuous reproduction.
Thus, from the starting moment at 0 ms, access to the sector 90EC0.sub.H on the MO disk 1204 starts and, at the same time, transfer of four frames of shot 1 from data FIFO buffer 1207 to JPEG expander 1208 starts. In other words, the access operation in MO disk 1204 and the transfer operation in FIFO 1207 are carried in parallel.
It is noted that the transfer of the frames from data FIFO buffer 1207 to JPEG expander 1208 is carried out such that, during one frame transfer, no data shift takes place in FIFO buffer 1207, but when one frame data is transferred, data shift of one frame takes place in FIFO buffer 1207. It takes about 33 ms to transfer one frame. Thus, as shown in FIG. 21, such as by line L2, the amount of data remaining in FIFO buffer 1207 is decreased in steps.
After 90 ms from the start, the access operation to the sector 90EC0.sub.H on the MO disk 1204 completes so that transfer from MO disk 1204 to FIFO buffer 1207 starts. By the data transfer from the MO disk to the FIFO buffer, the data amount in FIFO buffer 1207 increases linearly, as shown by line L1 at the bottom of FIG. 21. At this time the step decrease in the FIFO buffer still continues. Thus, after 90 ms on the time scale, the linear increase L1 and the step decrease L2 of the data in the FIFO buffer 1207 are effected simultaneously. Thus, the data amount in FIFO buffer 1207 would be L1+L2 to present a serrated line as shown in section (b) in FIG. 21.
At the end of this data transfer operation, i.e., at a moment just before 133 ms on the time scale, 5 frames of data are stored (remain) in the data FIFO buffer 1207. The counter N is also incremented to N=3 after this data transfer operation, so that in the next cycle, shot 3 (shot B) will be transferred from the MO disk to the FIFO buffer.
At 133 ms after the start of continuous reproduction, there are again 4 frames remaining in the data FIFO buffer 1207. The condition required for the data FIFO buffer fill routine 1802 (2002) is therefore again satisfied, and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (6E0.sub.H) of shot 3 on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 6E0.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 223 ms after the start of continuous reproduction, the 64 sectors, or 32 kilobytes, of data from sector 6E0.sub.H to sector 71F.sub.H corresponding to shot 3 are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 32 ms; data transfer is therefore completed at 255 ms after the start of continuous reproduction.
At the end of this data transfer operation, the number of frames stored (remaining) in the data FIFO buffer 1207 again increases to 5. The counter N is also incremented to N=4 after this data transfer operation, so that in the next cycle, shot 4 (shot D) will be transferred from the MO disk to the FIFO buffer.
At 267 ms after the start of continuous reproduction, there are again 4 remaining frames in the data FIFO buffer 1207. The condition required for the data FIFO buffer fill routine 1802 (2002) is therefore again satisfied, and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (90F60.sub.H) of shot 4 on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 90F60.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 357 ms after the start of continuous reproduction, the 64 sectors, or 32 kilobytes, of data from sector 90F60.sub.H to sector 90F9F.sub.H corresponding to shot 4 are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 32 ms; data transfer is therefore completed at 389 ms after the start of continuous reproduction.
At the end of this data transfer operation, the number of frames stored (remaining) in the data FIFO buffer 1207 again increases to 5. The counter N is also incremented to N=5 after this data transfer operation, so that in the next cycle, since shot 5 is not defined in the MO disk, no data will be transferred from the MO disk to the FIFO buffer.
At 400 ms after the start of continuous reproduction, there are again 4 remaining frames in the data FIFO buffer 1207. The condition required for the data FIFO buffer fill routine 1802 (2002) is therefore again satisfied, but because there is no shot 5, condition 2003 is satisfied and the data FIFO buffer fill routine 1802 terminates.
The JPEG expansion control routine 1801 deletes one frame of data from the data FIFO buffer 1207 at each vertical synchronization cycle, and the JPEG expansion control routine 1801 terminates 533 ms after the start of continuous reproduction because test 1902 in the JPEG expansion control routine 1801 returns NO.
By means of the conventional nonlinear video editing apparatus as described above, FIFO can continuously provide data to the JPEG expander 1208 without any stop during the transfer of shots A, C, B, D. In other words, the data FIFO buffer 1207 is never emptied with this video data sequence during said transfer. Thus, in the above example of the editing information shown in FIG. 15, it is therefore possible to continuously reproduce the video stored to the MO disk 1204. The following problems are, however, presented by this nonlinear video editing apparatus of the prior art.
It is assumed below that the editing information is as shown in FIG. 3. This editing information differs from that in FIG. 15 only in that shot B is only two frames long instead of four.
The operation in this case is described below. Note that the video reproduction set-up routine is the same as with the data shown in FIG. 15. Continuous reproduction based on the editing information shown in FIG. 3 is shown in FIG. 22 and described below.
In FIG. 22, the upper section (a) illustrates control of the MO disk drive 1205 with the passage of time; and the lower section (b) shows the change in the number of frames remaining in the data FIFO buffer 1207.
When continuous reproduction starts, i.e., at 0 ms on the time scale, there are already four frames remaining in the data FIFO buffer 1207. The conditions for the data FIFO buffer fill routine 1802 (2002) are therefore satisfied, and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (90EC0.sub.H) of shot 2 on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 90EC0.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 90 ms after the start of continuous reproduction, the 64 sectors, or 32 kilobytes, of data from sector 90EC0.sub.H to sector 90EFF.sub.H corresponding to shot 2 (shot C) are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 32 ms; data transfer is therefore completed at 122 ms after the start of continuous reproduction.
At the end of this data transfer operation, 5 frames of data are stored (remain) in the data FIFO buffer 1207. The counter N is also incremented to N=3 after this data transfer operation.
At 133 ms after the start of continuous reproduction, there are again 4 remaining frames in the data FIFO buffer 1207. The condition required for the data FIFO buffer fill routine 1802 (2002) is therefore again satisfied, and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (6E0.sub.H) of shot 3 (shot B) on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 6E0.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 223 ms after the start of continuous reproduction, the 32 sectors, or 16 kilobytes, of data from sector 6E0.sub.H to sector 6FF.sub.H corresponding to shot 3 (shot B) are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 16 ms; data transfer is therefore completed at 239 ms after the start of continuous reproduction.
At the end of this data transfer operation, the number of frames stored (remaining) in the data FIFO buffer 1207 has increased to only 3. The counter N is also incremented to N=4 after this data transfer operation.
Because there are only 3 frames remaining in the data FIFO buffer 1207, step 2002 of the data FIFO buffer fill routine 1802 is immediately satisfied (YES), and the MO disk drive control signal `b` is output to the MO disk drive 1205 to access the starting sector (90F60.sub.H) of shot 4 (shot D) on the MO disk 1204. The MO disk drive 1205 therefore accomplishes a seek operation to access sector 90F60.sub.H. The worst-case access time required for this operation is 90 ms.
Thus assuming the worst-case access time of 90 ms is required, 329 ms after the start of continuous reproduction, the 64 sectors, or 32 kilobytes, of data from sector 90F60.sub.H to sector 90F9F.sub.H corresponding to shot 4 are read from the MO disk 1204 and output to the data FIFO buffer 1207. Because the data transfer rate of the MO disk drive 1205 is at worst 8 megabits/sec., this data transfer requires approximately 32 ms; data transfer is therefore completed at 361 ms after the start of continuous reproduction.
However, at 333 ms after the start of continuous reproduction, the one remaining frame in the data FIFO buffer 1207 is read and expanded, thus emptying the data FIFO buffer 1207, satisfying step 1902 of the JPEG expansion control routine 1801, and thereby effecting an interrupt and terminating the continuous reproduction routine.
Therefore, when reproducing by means of a conventional nonlinear video editing apparatus based on the editing information video data stored to the MO disk 1204, poor random access performance results in the data FIFO buffer 1207 emptying when the video data shots are short as shown in FIG. 3, or when the data compression ratio is low and the data size of the same number of frames increases, and continuous reproduction therefore becomes impossible.